// 自定义指令
import Vue from 'vue'
import store from '@/store'

// 图片路径错误显示默认图片
Vue.directive('imgerror', {
  // value: binding.vue, 指令的值
  inserted(el, { value }) {
    // 如果图片路径为空
    if (!el.src) {
      el.src = value
    }
    // 图片加载失败会触发
    el.onerror = function() {
      el.src = value
    }
  },
  update(el, { value }) {
    // 如果图片路径为空
    if (!el.src) {
      el.src = value
    }
    // 图片加载失败会触发
    el.onerror = function() {
      el.src = value
    }
  }
})

// 按钮级别权限控制
Vue.directive('check', {
  // 一进来有权限就显示, 没有就不显示, inserted就足够了
  inserted(el, { value }) {
    const points = store.state.user.userInfo.roles?.points
    // console.log(points)
    const has = points?.some(item => item.toLowerCase() === value.toLowerCase())
    // console.log(has)
    if (!has) el.remove() // 如果没有按钮权限, 删除按钮
  }
})
